<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <script>

        // 思考问题需要全面   插入可以在最前面，最后面 ， 也可以是中间的某个位置
        // 插入可能出现死循环  




        // 在一个已经排序好的数组中插入一个值 [1, 2, 3, 4, 5, 6] -> 4


        // 思路： 找到正确的位置插入就好了  splice()


        // var arr = [1, 2, 3, 4, 5, 6];

        // var n = 10;

        // if (n < arr[0]) {
        //     arr.unshift(n);
        // }
        // else if (n > arr[arr.length - 1]) {
        //     arr.push(n);
        // }
        // else {
        //     for (var i = 0; i < arr.length; i++) {
        //         if (arr[i] <= n && arr[i + 1] >= n) {
        //             arr.splice(i + 1, 0, n);
        //             break;
        //         }
        //     }

        // }

        function insert(arr, n) {

            if (n < arr[0]) {
                arr.unshift(n);
                return
            }
            if (n > arr[arr.length - 1]) {
                arr.push(n);
                return
            }

            for (var i = 0; i < arr.length; i++) {
                if (arr[i] <= n && arr[i + 1] >= n) {
                    arr.splice(i + 1, 0, n);
                    return   // 死循环
                }
            }


        }


        // console.log(arr);

        var arr = [1, 2, 3, 4];

        insert(arr, 2);

        // arr.push(9)

        console.log(arr);


    </script>

</body>

</html>